<html>
  <head>
    <meta name="provenance" content="$Id: faq.html 487 2011-09-08 19:00:59Z amy $" />
    <link rel="stylesheet" href="aosa.css" type="text/css" />
    <title>The Architecture of Open Source Applications: Frequently Asked Questions</title>
  </head>
  <body>

    <div class="header">
      <table>
	<tr>
	  <td>
	    <a href="index.html"><img src="../images/titlebar.jpg" alt="The Architecture of Open Source Applications" /></a>
	  </td>
	  <td>
	    <strong><em><a href="http://www.lulu.com/content/paperback-book/the-architecture-of-open-source-applications/10559746">The Architecture of<br/>Open Source Applications</a></em></strong>
	    <br/>
	    <strong>Amy Brown and Greg Wilson (eds.)</strong>
	    <br/>
	    ISBN 978-1-257-63801-7
	    <br/>
            <a href="intro.html#license"><em>License</em></a>
            /
            <a href="index.html#purchase"><em>Buy</em></a>
            /
            <a href="index.html#news"><em>News</em></a>
            /
            <a href="index.html#contribute"><em>Contribute</em></a>
            /
            <em>FAQ</em>
	  </td>
	</tr>
      </table>
      <h1 class="chaptitle">Frequently Asked Questions</h1>
    </div>

    <ul>
      <li>
        <a href="#ebook">Is the book available as a PDF or in e-book format?</a>
      </li>
      <li>
        <a href="#pobox">Why won't Lulu ship to a post office box?</a>
      </li>
      <li>
        <a href="#amazon">Can I buy the book from Amazon.com?</a>
      </li>
      <li>
        <a href="#translate">Is the book available in other languages?</a>
      </li>
      <li>
        <a href="#repub">Can I publish a translation commercially?</a>
      </li>
      <li>
        <a href="#why-xyz">Why did you include XYZ?  It's awful!</a>
      </li>
      <li>
        <a href="#why-not-xyz">Why didn't you include XYZ?  It's the best software ever!</a>
      </li>
      <li>
        <a href="#why-license">Why did you use the CC-A license?</a>
      </li>
      <li>
        <a href="#royalties">How much are you making from this book?</a>
      </li>
      <li>
        <a href="#editorial">Will you help me write/publish my book?</a>
      </li>
      <li>
        <a href="#contribute">Would you like a chapter on XYZ?</a>
      </li>
      <li>
        <a href="#guidelines">What should go into such a chapter?</a>
      </li>
      <li>
        <a href="#history">Why did you create this book?</a>
      </li>
    </ul>

    <dl class="faq">

      <dt id="ebook">
        [2011-05-24] Is the book available as a PDF or in e-book format?
      </dt>
      <dd>
        Yes. You can purchase the book as a <a
        href="http://www.lulu.com/product/file-download/the-architecture-of-open-source-applications/15911050">PDF</a>
        or <a
        href="http://www.lulu.com/product/ebook/the-architecture-of-open-source-applications-elegance-evolution-and-a-few-fearless-hacks/16672161">epub</a>
        from Lulu, or as a <a
        href="http://www.amazon.com/Architecture-Open-Source-Applications-ebook/dp/B00557TMN4/ref=sr_1_2?ie=UTF8&qid=1315507996&sr=8-2">MOBI</a>
        from Amazon.  </dd>

      <dt id="#pobox">
        [2011-05-25] Why won't Lulu ship to a post office box?
      </dt>
      <dd>
        They say that the shipping company they use won't do it.  We'd
        appreciate it if you
        would <a href="http://www.lulu.com/support/">complain</a>.
      </dd>

      <dt id="#amazon">
        [2011-05-25] So can I buy the book from Amazon.com instead?
        <em>They'll</em> ship <em>anywhere</em>.
      </dt>
      <dd>
        Yes, as soon as it's listed there (which they say will take a
        couple of weeks).
        <a href="http://amnesty.org">Amnesty International</a> will get
        <a href="index.html#purchase">less money</a>, but they'll
        still get something.
      </dd>

      <dt id="translate">
        [2011-05-24] Is the book available in other languages?
      </dt>
      <dd>
        Not yet, but several translations are underway. If you would like 
        to help with translation, please
        <a href="mailto:aosa@aosabook.org">get in touch</a>.
      </dd>

      <dt id="repub">
        [2011-05-25] Can I publish a translation commercially?
      </dt>
      <dd>
        All of the book's content is freely available under the
        Creative Commons &ndash;
        Attribution <a href="intro.html#license">license</a>; you may
        re-use it however you want, so long as you cite the original
        source and author(s).  We would like translations (or other
        editions in English) to be CC-A licensed, and for some or all
        of the royalties from their sales to be donated
        to <a href="http://amnesty.org">Amnesty International</a>, but
        do not insist on either condition.
      </dd>

      <dt id="why-xyz">
        [2011-05-24] Why did you include XYZ?  It's awful!
      </dt>
      <dd>
        Our goal was to describe real architectures, not tidied-up
        fairy tales.  We think there is a lot to learn from things
        that <em>aren't</em> elegant: in many cases, what may at first
        appear to be poor code is in fact the least offensive
        responsible possible to forces that aren't immediately
        obvious, or made sense years ago when the application was
        first created.
      </dd>

      <dt id="why-not-xyz">
        [2011-05-24] Why didn't you include XYZ?  It's the best software ever!
      </dt>
      <dd>
        We probably couldn't find a volunteer to write about it.  If
        you would like to do so,
        please <a href="mailto:aosa@aosabook.org">contact us</a>: we
        would like to do an expanded edition, or even a second volume,
        some time in 2012.
      </dd>

      <dt id="why-license">
        [2011-05-24] Why did you use
        the <a href="intro.html#license">CC-A license</a>?
      </dt>
      <dd>
        For both idealistic and pragmatic reasons.  On the idealistic
        side, our aim is to help developers learn from each other, and
        we would like to put as few barriers in the way of that as
        possible.  Pragmatically, it's impossible to lock down digital
        content anyway&mdash;the first torrents for an earlier
        book, <a href="http://oreilly.com/catalog/9780596510046"><cite>Beautiful
        Code</cite></a>, appeared within an hour of its
        publication&mdash;so we think it's time people stopped trying.
      </dd>

      <dt id="royalties">
        [2011-05-24] How much are you making from this book?
      </dt>
      <dd>
        Nothing&mdash;all of the royalties are going directly
        to <a href="http://amnesty.org">Amnesty International</a>.
      </dd>

      <dt id="editorial">
        [2011-05-25] Will you help me write/publish my book?
      </dt>
      <dd>
        Amy Brown is a <a href="http://www.amyrbrown.ca">professional copy 
        editor</a>; this is her fourth
        print-on-demand book, and she is always happy
        to <a href="mailto:arbrownwriter@gmail.com">discuss other
        projects</a>.  Greg Wilson isn't allowed to take on any new
        projects until he finishes turning
        on <a href="http://software-carpentry.org">Software
        Carpentry</a> into a book (which is taking longer than
        expected).
      </dd>

      <dt id="contribute">
        [2011-05-24] Would you like a chapter on XYZ?
      </dt>
      <dd>
        We would welcome essay-length descriptions of the
        architectures of other applications, as long as they are open
        source (so that people can see the source code if they want),
        reasonably large (i.e., big enough to actually <em>have</em>
        an "architecture"), and reasonably well known.  We can take
        either LaTeX or HTML (please contact us for information about
        markup and formatting), and will convert to other formats as
        necessary, but must require all contributions to
        be <a href="intro.html#license">CC-A licensed</a> to avoid
        headaches.
      </dd>

      <dt id="guidelines">
        [2011-05-25] What should go into such a chapter?
      </dt>
      <dd>
        Imagine that you are giving a new developer on your project a
        one-hour introduction to how its code is put together.  What
        would you tell her?  You'd probably skip over the details of
        particular <code>struct</code> declarations, unless there was
        something unusual or surprising hidden there; instead, you
        would probably concentrate on what the high-level modules in
        the application are, how they communicate and coordinate with
        each other, and most importantly, why it all works that way.
        Sometimes the answer is historical ("It made sense at the
        time, and changing it would be too costly").  In other cases,
        the answer may depend on forces or constraints that aren't
        immediately obvious, such as the need to run on low-power or
        small-memory devices, or to be extensible by non-programmers.
        Whatever you include in your description, please also include
        your thoughts on what you have learned that others might learn
        from as well.
      </dd>

      <dt id="history">
        [2011-05-25] Why did you create this book?
      </dt>
      <dd>
        The short answer is, "Because we wanted to read it ourselves."
        The longer answer is that Greg Wilson became very frustrated
        while teaching a course called "CSC407: Software Architecture"
        at the <a href="http://www.cs.utoronto.ca">University of
        Toronto</a>&mdash;frustrated enough to recommend that the
        course be cancelled.  The problem was that all of textbooks
        with the words "software architecture" in their titles talked
        about how to describe architectures and how important
        architectures are, but didn't actually present any real
        architectures beyond pipe-and-filter, client/server, and
        model-view-controller.  His first attempt to crowd-source a
        solution led to the collection
        <a href="http://oreilly.com/catalog/9780596510046"><cite>Beautiful
        Code</cite></a>, in which leading developers describe the most
        beautiful piece of software they've ever seen.  It was a lot
        of fun to put together, but still wasn't what the students of
        that long-gone course needed.
      </dd>
        
    </dl>

    <p><em>Have a question?
    Please <a href="mailto:aosa@aosabook.org">mail us</a> and we'll
    answer as quickly as we can.</em></p>

    <div class="footer">
    </div>

  </body>
</html>
